Шаг 71 - Процедура Property

Процедура Property представляет собой последовательность инструкций языка Visual Basic, которые позволяют программисту создавать собственные свойства и оперировать с ними.

Процедуры Property создают допускающие только чтение свойства для форм, стандартных модулей и модулей класса.

Процедуры Property следует использовать вместо переменных Public в программе, которая должна выполняться после задания значение свойства.

В отличие от переменных Public процедуры Property могут иметь справочные строки, присвоенные им в окне Просмотр объектов.

Когда создается процедура Property она становится свойством модуля, содержащего эту процедуру. В языке Visual Basic имеются три следующих типа процедур Property:

Процедура 	Описание
Property Let	Присваивает значение свойству.
Property Get	Возвращает значение свойства.
Property Set	Задает ссылку на объект.

Синтаксис процедуры Property :

Public | Private] [Static] Property имя_свойства_ [(список_аргументов)] [As тип]
инструкции
End Property

Процедуры Property обычно используются попарно: Property Let с Property Get и Property Set с Property Get. Описание одной процедуры Property Get подобно описанию свойства, доступного только для чтения. Использование всех трех процедур Property вместе полезно только для переменных Variant, так как только могут содержать как объект, так и другую информацию о типах данных. В отличие от Property Let процедура Property Set предназначена для работы с объектами.

Обязательные аргументы описания процедур Property представлены в следующей таблице:

Процедура 	Синтаксис описания
Property Get	Property Get имя(1, …, n) As тип
Property Let	Property Let имя(1, …,,,, n, n+1)
Property Set	Property Set имя(1, …, n, n+1)

Первый аргумент и все следующие вплоть до последнего (1, …, n) должны иметь одно и то же имя и тип данных во всех одноименных процедурах Property.

Описание процедуры Property Get имеет на один аргумент меньше, чем связанные описания Property Let и Property Set. Тип данных процедуры Property Get должен быть тем же самым, что и тип последнего аргумента (n+1) в связанных описаниях Property Let и Property Set. Например, если описывается следующая процедура Property Let, в описании Property Get должны использоваться аргументы с тем же самым именем и типом данных, как аргументы в процедуре Property Let.

Property Let Names(intX As Integer, intY As Integer, varZ As Variant)
‘Выполняемая инструкция.
End Property
Property Get Names(intX As Integer, intY As Integer) As Variant
‘Выполняемая инструкция.
End Property

Тип данных последнего аргумента в описании Property Set должен быть или объектным типом или Variant.

Hosted by uCoz